#ifndef DDISPLAY_H_
#define DDISPLAY_H_

#include <SDL/SDL.h>
#include <SDL/SDL_gfxPrimitives.h>
#include <cmath>

namespace pezad
{

/**
 * The one and only class to handle display goodness.
 * 
 * TODO put good comments here.
 */
class DDisplay
{
public:
	/**
	 * Retrieves the only instance for the display.
	 */
	static DDisplay& getInstance();

	void renderFrame();

private:
	/**
	 * Constructor for the display. 
	 */
    DDisplay();
    
	virtual ~DDisplay();

	/**
	 * Initializes the display system. And SDL. So this should probably occur
	 * first in the whole program. OR ELSE.
	 */
	void init();

	/**
	 * The currently displayed front buffer.
	 */
	SDL_Surface *screen;

};

}

#endif /*DDISPLAY_H_*/
